# -*- coding:utf-8 -*-
# -*- coding:utf-8 -*-
# 题目
# 给你一个整数数组nums ，按要求返回一个新数组 counts 。
# 数组 counts 有该性质：counts[i]的值是nums[i] 右侧小于 nums[i] 的元素的数量。

# 示例1：
# 输入：nums = [5,2,6,1]
# 输出：[2,1,1,0]
# 解释：
# 5 的右侧有 2 个更小的元素 (2 和 1)
# 2 的右侧仅有 1 个更小的元素 (1)
# 6 的右侧有 1 个更小的元素 (1)
# 1 的右侧有 0 个更小的元素

# 示例2：
# 输入：nums = [-1]
# 输出：[0]

# 示例3：
# 输入：nums = [-1,-1]
# 输出：[0,0]
# def func_one(data:list):
#  return new_list

def func_ome(data_list):
    list_one = []  # 处理数据
    list_two = []  # 保存结果
    # 使用enumerate()函数，遍历拿到列表数据下标和对应的数据

    # 嵌套循环，外层循环一次，内层全部循环完毕，外层在进入第二次循环
    for index_one, data_one in enumerate(data_list):
        for index_two, data_two in enumerate(data_list[index_one + 1:]):
            if data_two < data_one:
                list_one.append(data_two)      # 如果内循环的值，小于外循环的值，添加到list_one等待处理
        list_two.append(len(list_one))          # 计算每次列表的长度
        list_one.clear()                        # 每次处理完成，对list_one,进行一下清空
    print(list_two)


func_ome([5, 2, 6, 1])
func_ome([-1, -1])
func_ome([-1])
